home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 40
/
Amiga Format CD40 (1999-05-11)(Future Publishing)(GB)(Track 1 of 3)[!][issue 1999-06].iso
/
-seriously_amiga-
/
misc
/
notes
/
english
/
basskey.file
< prev
next >
Wrap
Text File
|
1999-03-29
|
43KB
|
1,410 lines
/* subprogramm for Notes.pprx */
signal on halt
signal on break_c
signal on break_e
signal on break_d
call ppm_SetStyle(N)
call ppm_SetMagMode(250)
call ppm_UpdateScreen()
noteneingabe:
sysform = "choosen notesystem:2"'0a'x"number of accident.:2"'0a'x"smallest noteworth:4"
systemform = ppm_Getform("Please give in ... (nothing=BREAK)", 3, sysform)
if systemform = '' then exit_msg("Break!")
parse var systemform systemart '0a'x vz '0a'x xgrd
if vz == '' then vz = 0
select
when systemart == '2' then zdist = 4
when systemart == '1v' then zdist = 2
when systemart == '1b' then zdist = 2
when systemart == '' then exit_msg("Break!")
when vz == '' then exit_msg("Break!")
otherwise noteneingabe()
end
zdist2 = zdist-2
select
when xgrd == '1' then xg =0.7
when xgrd == '2' then xg =1.4
when xgrd == '4' then xg =2.8
when xgrd == '8' then xg =5.6
when xgrd == '16' then xg =11.2
when xgrd == '' then exit_msg("Break!")
otherwise noteneingabe()
end
/* pointmessure of the notes */
notepkt = 26
call ppm_SetJustification(0)
zz = 0 /* linecounter (german=Zeilenzähler) */
notex = (2+(vz*0.175))
page = ppm_CurrentPage()
pfad:
do
eingabe = ppm_GetFileName("Pleace choose the notescriptfile ...", "Notes:")
res = OPEN(notenfile, eingabe, 'R')
if res == 0 then
do
fres = ppm_inform(2,"Error in input or file does'nt exist !!!","Repeat","Break")
if fres == 0 then pfad()
else exit_msg("Break!")
end
call ppm_ShowStatus("OK, I'm working ...")
auslesen(notenfile)
end
/* x-distance of the notes */
auslesen:
do
parse arg file
noten = READCH(file, 4000)
i=1
do forever
nw = word(noten, i)
nn = word(noten, i+1)
al = word(noten, i+2)
if nw == 'P' then nw = 'p'
if nw == 'D' then nw = 'd'
if nw == 'C' then nw = 'c'
if nw == 'L' then nw = 'l'
if nw == 'M' then nw = 'm'
if nn == 'L' then nn = 'l'
if nw == 'J' then nw = 'j'
if nw == 'END' then nw = 'end'
select
when al == (X2C(4e0a)) then al = 'n'
when al == (X2C(6e0a)) then al = 'n'
when al == (X2C(300a)) then al = '0'
otherwise exit_msg("There was an error!")
end
select
when nn=='DB1' then nn = 'Db1'
when nn=='GB1' then nn = 'Gb1'
when nn=='BB1' then nn = 'Bb1'
when nn=='AB1' then nn = 'Ab1'
when nn=='DB2' then nn = 'Db2'
when nn=='EB2' then nn = 'Eb2'
when nn=='BB2' then nn = 'Bb2'
when nn=='GB2' then nn = 'Gb2'
when nn=='AB2' then nn = 'Ab2'
when nn=='DB3' then nn = 'Db3'
when nn=='EB3' then nn = 'Eb3'
when nn=='BB3' then nn = 'Bb3'
when nn=='GB3' then nn = 'Gb3'
when nn=='AB3' then nn = 'Ab3'
otherwise NOP
end
call auswahl()
i=i+3
end
end
auswahl:
do
select
when nw == 'j' then do
zz = 0 /* linecounter */
notex = (2+(vz*0.175))
return
end
when nw == 'end' then
do
call ppm_ClearStatus()
exit_msg("Ready!")
end
when nw == 's' then
do
xw = xg/16
nw='x'
yv = 0
end
when nw == 'S' then
do
xw = xg/16
nw='X'
yv = 0.47
end
when nw == 'e' then
do
xw = xg/8
nw='e'
yv = 0
end
when nw == 'E' then
do
xw = xg/8
nw='E'
yv = 0.47
end
when nw == 'q' then
do
xw = xg/4
nw='q'
yv = 0
end
when nw == 'Q' then
do
xw = xg/4
nw='Q'
yv = 0.47
end
when nw == 'h' then
do
xw = xg/2
yv = 0
end
when nw == 'H' then
do
xw = xg/2
yv = 0.47
end
when nw == 'w' then
do
xw = xg
nw='w'
yv = 0
end
when nw == 'W' then
do
xw = xg
nw='W'
yv = 0.47
end
/* 2 eigth- or sixteenthnotes join together by a beam(fat line) */
when nw=='m' then
do
call ppm_SetEdit(boxid)
call ppm_SelectBoxText()
boxtxt=ppm_GetBlockText(0)
btb=word(boxtxt,1)
select
when btb=='e' then
do
fbx=0.45
fby=0.12
newtxt='q'
balk=1
end
when btb=='E' then
do
fbx=0.145
fby=0.73
newtxt='Q'
balk=1
end
when btb=='x' then
do
fbx=0.45
fby=0.12
newtxt='q'
balk=2
end
when btb=='X' then
do
fbx=0.145
fby=0.73
newtxt='Q'
balk=2
end
otherwise
do
call ppm_EndEdit()
call ppm_Inform(1,"Only eight or sixteenth are able to merge!!!","OK")
notenwert()
end
end
call ppm_Cut()
call ppm_UnBlock()
call ppm_EndEdit()
call ppm_TextIntoBox(boxid, newtxt)
boxposb=ppm_GetBoxPosition(boxid)
boxbx=word(boxposb,1)
boxby=word(boxposb,2)
if boxbosbx <= 3 then
do
call ppm_Inform(1,"Merge not accross the lineend !!!","OK")
notenwert()
end
firstbox = boxid - 1
do forever
info = ppm_GetBoxInfo(firstbox)
type = word(info,1)
if type ~= "Text" then firstbox = firstbox - 1
else break
end
curbox=ppm_ArtFirstBox(firstbox)
call ppm_SetEdit(curbox)
call ppm_SelectBoxText()
boxtxt=ppm_GetBlockText(0)
bta=word(boxtxt,1)
select
when bta=='e' then
do
fax=0.39
fay=0.12
newtxt='q'
end
when bta=='E' then
do
fax=0.085
fay=0.73
newtxt='Q'
end
when bta=='x' then
do
fax=0.39
fay=0.12
newtxt='q'
end
when bta=='X' then
do
fax=0.085
fay=0.73
newtxt='Q'
end
otherwise
do
call ppm_EndEdit()
call ppm_Inform(1,"Only eight or sixteenth are able to merge!!!","OK")
notenwert()
end
end
if bta ~= btb then
do
call ppm_EndEdit()
call ppm_Inform(1,"Only same notes are able to merge!!!","OK")
call ppm_SetEdit(boxid)
call ppm_SelectBoxText()
call ppm_Cut()
call ppm_EndEdit()
call ppm_TextIntoBox(boxid, btb)
notenwert()
end
call ppm_Cut()
call ppm_UnBlock()
call ppm_EndEdit()
call ppm_TextIntoBox(curbox, newtxt)
boxposa=ppm_GetBoxPosition(curbox)
boxax=word(boxposa,1)
boxay=word(boxposa,2)
call ppm_SetLineWeight(3)
do forever
if balk == 0 then break
lineid=ppm_DrawLine(boxax+fax, boxay+fay, boxbx+fbx, boxby+fby)
call ppm_SetBoxOffset(lineid, -0.08, 0)
measure=ppm_GetBoxSize(lineid)
linex = word(measure,1)
liney = word(measure,2)
call ppm_SetBoxSize(lineid, linex - 0.155, liney)
if bta == 'x' then
do
fay = fay + 0.2
fby = fby + 0.2
end
if bta == 'X' then
do
fay = fay - 0.2
fby = fby - 0.2
end
balk = balk - 1
end
call ppm_ArtFirstBox(boxid)
call ppm_SetLineWeight(0.5)
end
/*point after note */
when nw == 'pt' then
do
if notex < 3 then
do
notex = bakx
zz = zz - zdist
call ppm_SetSize(25)
box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'd')
end
else
do
call ppm_SetSize(25)
box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'd')
end
select
when nn == '1' then
do
xw = xg
notex = notex+xw
end
when nn == '2' then
do
xw = xg/2
notex = notex+xw
end
when nn == '4' then
do
xw = xg/4
notex = notex+xw
end
when nn == '8' then
do
xw = xg/8
notex = notex+xw
end
when nn == '16' then
do
xw = xg/16
notex = notex+xw
end
when nn == 'l' then
do
xw = 0.2
notex = notex+xw
end
otherwise
do
call ppm_ClearStatus()
exit_msg("There was an error")
end
end
if notex >=18.7 then
do
notex = (2+(vz*0.175))
zz = zz + zdist
end
return
end
when nw == 'PT' then
do
if notex < 3 then
do
notex = bakx
zz = zz - zdist
call ppm_SetSize(25)
box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'd')
end
else
do
call ppm_SetSize(25)
box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'd')
end
select
when nn == '1' then
do
xw = xg
notex = notex+xw
end
when nn == '2' then
do
xw = xg/2
notex = notex+xw
end
when nn == '4' then
do
xw = xg/4
notex = notex+xw
end
when nn == '8' then
do
xw = xg/8
notex = notex+xw
end
when nn == '16' then
do
xw = xg/16
notex = notex+xw
end
when nn == 'l' then
do
xw = 0.2
notex = notex+xw
end
otherwise
do
call ppm_ClearStatus()
exit_msg("There was an error")
end
end
if notex >=18.7 then
do
notex = (2+(vz*0.175))
zz = zz + zdist
end
return
end
/* barline */
when nw == 'l' then
do
call ppm_SetLineWeight(0.25)
call ppm_DrawLine(notex, 2+zz+zdist2, notex, zdist2+2.8+zz)
notex = notex+0.2
return
end
when nw == 'p' | when nw == 'P' then
do
pausenwert:
x = notex
select
when nn == '1' then do
y = zdist2+2.29+zz
call ppm_SetLineWeight(4)
call ppm_DrawLine(x, y, x+0.4, y)
call ppm_SetLineWeight(0.25)
xw = xg
notex = notex+xw
end
when nn == '2' then do
y = zdist2+2.33+zz
call ppm_SetLineWeight(4)
call ppm_DrawLine(x, y, x+0.4, y)
call ppm_SetLineWeight(0.25)
xw = xg/2
notex = notex+xw
end
when nn == '4' then do
y = zdist2+2.07+zz
Pbox = ppm_CreateBox(x, y, 0.59, 0.86, 0)
boxnm = ppm_DocNextBox(Pbox)
call ppm_DeleteContents(boxnm)
call ppm_ImportGraphic(boxnm, 'Genies:note_pause/quarterpause', pause)
xw = xg/4
notex = notex+xw
end
when nn == '8' then do
y = zdist2+2.21+zz
Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
boxnm = ppm_DocNextBox(Pbox)
call ppm_DeleteContents(boxnm)
call ppm_ImportGraphic(boxnm, 'Genies:note_pause/eighthpause', pause)
xw = xg/8
notex = notex+xw
end
when nn == '16' then do
y = zdist2+2.21+zz
Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
boxnm = ppm_DocNextBox(Pbox)
call ppm_DeleteContents(boxnm)
call ppm_ImportGraphic(boxnm, 'Genies:note_pause/sixteenthpause', pause)
xw = xg/16
notex = notex+xw
end
otherwise
do
call ppm_ClearStatus()
exit_msg("There was an error")
end
end
if notex >=18.7 then
do
notex = (2+(vz*0.175))
zz = zz + zdist
end
return
end
/* spaces */
when nw == 'c' then
do
select
when nn == '1' then
do
xw = xg
notex = notex+xw
end
when nn == '2' then
do
xw = xg/2
notex = notex+xw
end
when nn == '4' then
do
xw = xg/4
notex = notex+xw
end
when nn == '8' then
do
xw = xg/8
notex = notex+xw
end
when nn == '16' then
do
xw = xg/16
notex = notex+xw
end
when nn == 'l' then
do
xw = 0.2
notex = notex+xw
end
when nn == 0 then do
end
otherwise
do
call ppm_ClearStatus()
exit_msg("There was an error")
end
end
if notex >=18.7 then
do
notex = (2+(vz*0.175))
zz = zz + zdist
end
return
end
otherwise
do
call ppm_ClearStatus()
exit_msg("There was an error")
end
end
/* y-distance of the notes - notestems to up */
call ppm_SetLineWeight(0.25)
select
when nn=='g#3' then
do
yw = 0.745 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
end
when nn=='g3' then
do
yw = 0.745 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
end
when nn=='gb3' then
do
yw = 0.745 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
end
when nn=='f#3' then
do
yw = 0.845 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='f3' then
do
yw = 0.845 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='e#3' then
do
yw = 0.945 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='e3' then
do
yw = 0.945 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='eb3' then
do
yw = 0.945 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='d#3' then
do
yw = 1.045 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='d3' then
do
yw = 1.045 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='db3' then
do
yw = 1.045 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='c#3' then
do
yw = 1.145 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='c3' then
do
yw = 1.145 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='b2' then
do
yw = 1.245 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='bb2' then
do
yw = 1.245 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='a#2' then
do
yw = 1.345 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='a2' then
do
yw = 1.345 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='ab2' then
do
yw = 1.345 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='g#2' then
do
yw = 1.445 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='g2' then
do
yw = 1.445 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='gb2' then
do
yw = 1.445 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='f#2' then
do
yw = 1.545 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='f2' then
do
yw = 1.545 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='e#2' then
do
yw = 1.645 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='e2' then
do
yw = 1.645 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='eb2' then
do
yw = 1.645 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='d#2' then
do
yw = 1.745 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='d2' then
do
yw = 1.745 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='db2' then
do
yw = 1.745 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='c#2' then
do
yw = 1.845 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='c2' then
do
yw = 1.845 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='b1' then
do
yw = 1.945 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='bb1' then
do
yw = 1.945 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='a#1' then
do
yw = 2.045 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='a1' then
do
yw = 2.045 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='ab1' then
do
yw = 2.045 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='g#1' then
do
yw = 2.145 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='g1' then
do
yw = 2.145 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='gb1' then
do
yw = 2.145 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='f#1' then
do
yw = 2.245 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='f1' then
do
yw = 2.245 + zdist2
if al == 'n' then call auflhoch()
end
when nn=='e#1' then
do
yw = 2.345 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='e1' then
do
yw = 2.345 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='eb1' then
do
yw = 2.345 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='d#1' then
do
yw = 2.445 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='d1' then
do
yw = 2.445 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='db1' then
do
yw = 2.445 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.21, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='c#1' then
do
yw = 2.545 + zdist2
box#id = ppm_CreateBox(notex-0.22, yw+zz+0.32, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
end
when nn=='c1' then
do
yw = 2.545 + zdist2
if al == 'n' then call auflhoch()
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
end
/* y-distance of the notes - notenstems to down */
when nn=='G#3' then
do
yw = 1.22 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
end
when nn=='G3' then
do
yw = 1.22 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
end
when nn=='Gb3' then
do
yw = 1.22 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
end
when nn=='F#3' then
do
yw = 1.32 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='F3' then
do
yw = 1.32 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='E#3' then
do
yw = 1.42 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='E3' then
do
yw = 1.42 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='Eb3' then
do
yw = 1.42 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
end
when nn=='D#3' then
do
yw = 1.52 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='D3' then
do
yw = 1.52 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='Db3' then
do
yw = 1.52 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='C#3' then
do
yw = 1.62 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='C3' then
do
yw = 1.62 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
end
when nn=='B2' then
do
yw = 1.72 + zdist2
if al == 'n' then call aufltief()
end
when nn=='Bb2' then
do
yw = 1.72 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='A#2' then
do
yw = 1.82 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='A2' then
do
yw = 1.82 + zdist2
if al == 'n' then call aufltief()
end
when nn=='AB2' then nn = 'Ab2'
when nn=='Ab2' then
do
yw = 1.82 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='G#2' then
do
yw = 1.92 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='G2' then
do
yw = 1.92 + zdist2
if al == 'n' then call aufltief()
end
when nn=='Gb2' then
do
yw = 1.92 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='F#2' then
do
yw = 2.02 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='F2' then
do
yw = 2.02 + zdist2
if al == 'n' then call aufltief()
end
when nn=='E#2' then
do
yw = 2.12 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='E2' then
do
yw = 2.12 + zdist2
if al == 'n' then call aufltief()
end
when nn=='Eb2' then
do
yw = 2.12 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='D#2' then
do
yw = 2.22 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='D2' then
do
yw = 2.22 + zdist2
if al == 'n' then call aufltief()
end
when nn=='Db2' then
do
yw = 2.22 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='C#2' then
do
yw = 2.32 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='C2' then
do
yw = 2.32 + zdist2
if al == 'n' then call aufltief()
end
when nn=='B1' then yw = 2.42 + zdist2
when nn=='Bb1' then
do
yw = 2.42 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='A#1' then
do
yw = 2.52 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='A1' then
do
yw = 2.52 + zdist2
if al == 'n' then call aufltief()
end
when nn=='Ab1' then
do
yw = 2.52 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='G#1' then
do
yw = 2.62 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='G1' then
do
yw = 2.62 + zdist2
if al == 'n' then call aufltief()
end
when nn=='Gb1' then
do
yw = 2.62 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
end
when nn=='F#1' then
do
yw = 2.72 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
end
when nn=='F1' then
do
yw = 2.72 + zdist2
if al == 'n' then call aufltief()
end
when nn=='E#1' then
do
yw = 2.82 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='E1' then
do
yw = 2.82 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='Eb1' then
do
yw = 2.82 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='D#1' then
do
yw = 2.92 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='D1' then
do
yw = 2.92 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='Db1' then
do
yw = 2.92 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 'f')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
end
when nn=='C#1' then
do
yw = 3.02 + zdist2
box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
call ppm_SetSize(20)
call ppm_TextIntoBox(box#id, 's')
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
end
when nn=='C1' then
do
yw = 3.02 + zdist2
if al == 'n' then call aufltief()
call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
end
otherwise
do
call ppm_ClearStatus()
exit_msg("There was an error")
end
end
/* größe einer Notenbox */
notewidht = 0.64
noteheight = 0.97
boxid = ppm_CreateBox(notex, yw+zz, notewidht, noteheight, 0)
call ppm_SetSize(notepkt)
call ppm_TextIntoBox(boxid, nw)
bakx = notex
notex = (notex + xw)
if notex >=18.7 then
do
notex = (2+(vz*0.175))
zz = zz + zdist
end
return
end
exit
auflhoch:
do
Pbox = ppm_CreateBox(notex-0.34, yw+zz+0.07, 0.6, 1.2, 0)
boxnm = ppm_DocNextBox(Pbox)
call ppm_DeleteContents(boxnm)
call ppm_ImportGraphic(boxnm, 'Genies:note_pause/naturalsng', Zeichen)
return
end
aufltief:
do
Pbox = ppm_CreateBox(notex-0.34, yw+zz-0.4, 0.6, 1.2, 0)
boxnm = ppm_DocNextBox(Pbox)
call ppm_DeleteContents(boxnm)
call ppm_ImportGraphic(boxnm, 'Genies:note_pause/naturalsng', Zeichen)
return
end
break_d:
break_e:
break_c:
halt:
call exit_msg("User aborted Genie!")
exit_msg: procedure
do
parse arg message
if message ~= '' then
call ppm_Inform(1,message,)
call ppm_ClearStatus()
call ppm_AutoUpdate(1)
exit
end